//-----------------------------------------------------------------------
// <copyright file="a_DomainBase.cs" company="AACECOM">
//     Copyright (c) AACECOM. All rights reserved.
// </copyright>
//-----------------------------------------------------------------------
	
using System;
using System.Data;
using System.ComponentModel;
using System.Collections;

namespace ThoiTrang.Entities
{
	[Serializable]
	public class a_DomainBase
	{
		
		#region Variable Declarations
		private int				domainID = 0;
		private int				groupID = 0;
		private string				domainName = string.Empty;
		private string				domainAlias = string.Empty;
		private string				companyName = string.Empty;
		private string				address = string.Empty;
		private string				city = string.Empty;
		private string				state = string.Empty;
		private string				zipcode = string.Empty;
		private string				country = string.Empty;
		private string				industry = string.Empty;
		private string				mcFirstName = string.Empty;
		private string				mcLastName = string.Empty;
		private string				mcTitle = string.Empty;
		private string				mcPhone = string.Empty;
		private string				mcExt = string.Empty;
		private string				mcFax = string.Empty;
		private string				mcEmail = string.Empty;
		private string				tcFirstName = string.Empty;
		private string				tcLastName = string.Empty;
		private string				tcTitle = string.Empty;
		private string				tcPhone = string.Empty;
		private string				tcExt = string.Empty;
		private string				tcEmail = string.Empty;
		private string				paymentType = string.Empty;
		private string				billingContact = string.Empty;
		private string				cardType = string.Empty;
		private string				cardNum = string.Empty;
		private string				expireMonth = string.Empty;
		private string				expireYear = string.Empty;
		private string				nameOnCard = string.Empty;
		private string				source = string.Empty;
		private bool				agreeToMMSA = false;
		private string				ip = string.Empty;
		private DateTime				dateSign = new DateTime(1900,1,1,0,0,0,0);
		private DateTime				dateActivate = new DateTime(1900,1,1,0,0,0,0);
		private decimal				qtySoldToDate = 0;
		private decimal				amtSoldToDate = 0;
		private int				totalUsers = 0;
		private int				totalProducts = 0;
		private byte				status = 0;
		#endregion
		
		#region Constructors
		public a_DomainBase() {}
		
		public a_DomainBase (
			int domainID,
			int groupID,
			string domainName,
			string domainAlias,
			string companyName,
			string address,
			string city,
			string state,
			string zipcode,
			string country,
			string industry,
			string mcFirstName,
			string mcLastName,
			string mcTitle,
			string mcPhone,
			string mcExt,
			string mcFax,
			string mcEmail,
			string tcFirstName,
			string tcLastName,
			string tcTitle,
			string tcPhone,
			string tcExt,
			string tcEmail,
			string paymentType,
			string billingContact,
			string cardType,
			string cardNum,
			string expireMonth,
			string expireYear,
			string nameOnCard,
			string source,
			bool agreeToMMSA,
			string ip,
			DateTime dateSign,
			DateTime dateActivate,
			decimal qtySoldToDate,
			decimal amtSoldToDate,
			int totalUsers,
			int totalProducts,
			byte status)
		
		{
			this.domainID = domainID;
			this.groupID = groupID;
			this.domainName = domainName;
			this.domainAlias = domainAlias;
			this.companyName = companyName;
			this.address = address;
			this.city = city;
			this.state = state;
			this.zipcode = zipcode;
			this.country = country;
			this.industry = industry;
			this.mcFirstName = mcFirstName;
			this.mcLastName = mcLastName;
			this.mcTitle = mcTitle;
			this.mcPhone = mcPhone;
			this.mcExt = mcExt;
			this.mcFax = mcFax;
			this.mcEmail = mcEmail;
			this.tcFirstName = tcFirstName;
			this.tcLastName = tcLastName;
			this.tcTitle = tcTitle;
			this.tcPhone = tcPhone;
			this.tcExt = tcExt;
			this.tcEmail = tcEmail;
			this.paymentType = paymentType;
			this.billingContact = billingContact;
			this.cardType = cardType;
			this.cardNum = cardNum;
			this.expireMonth = expireMonth;
			this.expireYear = expireYear;
			this.nameOnCard = nameOnCard;
			this.source = source;
			this.agreeToMMSA = agreeToMMSA;
			this.ip = ip;
			this.dateSign = dateSign;
			this.dateActivate = dateActivate;
			this.qtySoldToDate = qtySoldToDate;
			this.amtSoldToDate = amtSoldToDate;
			this.totalUsers = totalUsers;
			this.totalProducts = totalProducts;
			this.status = status;
		}
		#endregion
		
		#region Properties	
		/// <summary>
		/// 	
		/// </summary>
		/// <value>This type is int</value>
		public int DomainID
		{
			get { return domainID; }
			set { domainID = value; }
		}
	
		/// <summary>
		/// 	
		/// </summary>
		/// <value>This type is int</value>
		public int GroupID
		{
			get { return groupID; }
			set { groupID = value; }
		}
	
		/// <summary>
		/// 	
		/// </summary>
		/// <value>This type is varchar</value>
		public string DomainName
		{
			get { return domainName; }
			set { domainName = value; }
		}
	
		/// <summary>
		/// 	
		/// </summary>
		/// <value>This type is varchar</value>
		public string DomainAlias
		{
			get { return domainAlias; }
			set { domainAlias = value; }
		}
	
		/// <summary>
		/// 	
		/// </summary>
		/// <value>This type is varchar</value>
		public string CompanyName
		{
			get { return companyName; }
			set { companyName = value; }
		}
	
		/// <summary>
		/// 	
		/// </summary>
		/// <value>This type is varchar</value>
		public string Address
		{
			get { return address; }
			set { address = value; }
		}
	
		/// <summary>
		/// 	
		/// </summary>
		/// <value>This type is varchar</value>
		public string City
		{
			get { return city; }
			set { city = value; }
		}
	
		/// <summary>
		/// 	
		/// </summary>
		/// <value>This type is varchar</value>
		public string State
		{
			get { return state; }
			set { state = value; }
		}
	
		/// <summary>
		/// 	
		/// </summary>
		/// <value>This type is varchar</value>
		public string Zipcode
		{
			get { return zipcode; }
			set { zipcode = value; }
		}
	
		/// <summary>
		/// 	
		/// </summary>
		/// <value>This type is varchar</value>
		public string Country
		{
			get { return country; }
			set { country = value; }
		}
	
		/// <summary>
		/// 	
		/// </summary>
		/// <value>This type is varchar</value>
		public string Industry
		{
			get { return industry; }
			set { industry = value; }
		}
	
		/// <summary>
		/// 	
		/// </summary>
		/// <value>This type is varchar</value>
		public string McFirstName
		{
			get { return mcFirstName; }
			set { mcFirstName = value; }
		}
	
		/// <summary>
		/// 	
		/// </summary>
		/// <value>This type is varchar</value>
		public string McLastName
		{
			get { return mcLastName; }
			set { mcLastName = value; }
		}
	
		/// <summary>
		/// 	
		/// </summary>
		/// <value>This type is varchar</value>
		public string McTitle
		{
			get { return mcTitle; }
			set { mcTitle = value; }
		}
	
		/// <summary>
		/// 	
		/// </summary>
		/// <value>This type is varchar</value>
		public string McPhone
		{
			get { return mcPhone; }
			set { mcPhone = value; }
		}
	
		/// <summary>
		/// 	
		/// </summary>
		/// <value>This type is varchar</value>
		public string McExt
		{
			get { return mcExt; }
			set { mcExt = value; }
		}
	
		/// <summary>
		/// 	
		/// </summary>
		/// <value>This type is varchar</value>
		public string McFax
		{
			get { return mcFax; }
			set { mcFax = value; }
		}
	
		/// <summary>
		/// 	
		/// </summary>
		/// <value>This type is varchar</value>
		public string McEmail
		{
			get { return mcEmail; }
			set { mcEmail = value; }
		}
	
		/// <summary>
		/// 	
		/// </summary>
		/// <value>This type is varchar</value>
		public string TcFirstName
		{
			get { return tcFirstName; }
			set { tcFirstName = value; }
		}
	
		/// <summary>
		/// 	
		/// </summary>
		/// <value>This type is varchar</value>
		public string TcLastName
		{
			get { return tcLastName; }
			set { tcLastName = value; }
		}
	
		/// <summary>
		/// 	
		/// </summary>
		/// <value>This type is varchar</value>
		public string TcTitle
		{
			get { return tcTitle; }
			set { tcTitle = value; }
		}
	
		/// <summary>
		/// 	
		/// </summary>
		/// <value>This type is varchar</value>
		public string TcPhone
		{
			get { return tcPhone; }
			set { tcPhone = value; }
		}
	
		/// <summary>
		/// 	
		/// </summary>
		/// <value>This type is varchar</value>
		public string TcExt
		{
			get { return tcExt; }
			set { tcExt = value; }
		}
	
		/// <summary>
		/// 	
		/// </summary>
		/// <value>This type is varchar</value>
		public string TcEmail
		{
			get { return tcEmail; }
			set { tcEmail = value; }
		}
	
		/// <summary>
		/// 	
		/// </summary>
		/// <value>This type is varchar</value>
		public string PaymentType
		{
			get { return paymentType; }
			set { paymentType = value; }
		}
	
		/// <summary>
		/// 	
		/// </summary>
		/// <value>This type is varchar</value>
		public string BillingContact
		{
			get { return billingContact; }
			set { billingContact = value; }
		}
	
		/// <summary>
		/// 	Visa, Master, Amex, Discover
		/// </summary>
		/// <value>This type is varchar</value>
		public string CardType
		{
			get { return cardType; }
			set { cardType = value; }
		}
	
		/// <summary>
		/// 	
		/// </summary>
		/// <value>This type is varchar</value>
		public string CardNum
		{
			get { return cardNum; }
			set { cardNum = value; }
		}
	
		/// <summary>
		/// 	
		/// </summary>
		/// <value>This type is varchar</value>
		public string ExpireMonth
		{
			get { return expireMonth; }
			set { expireMonth = value; }
		}
	
		/// <summary>
		/// 	
		/// </summary>
		/// <value>This type is varchar</value>
		public string ExpireYear
		{
			get { return expireYear; }
			set { expireYear = value; }
		}
	
		/// <summary>
		/// 	
		/// </summary>
		/// <value>This type is varchar</value>
		public string NameOnCard
		{
			get { return nameOnCard; }
			set { nameOnCard = value; }
		}
	
		/// <summary>
		/// 	
		/// </summary>
		/// <value>This type is varchar</value>
		public string Source
		{
			get { return source; }
			set { source = value; }
		}
	
		/// <summary>
		/// 	
		/// </summary>
		/// <value>This type is bit</value>
		public bool AgreeToMMSA
		{
			get { return agreeToMMSA; }
			set { agreeToMMSA = value; }
		}
	
		/// <summary>
		/// 	
		/// </summary>
		/// <value>This type is varchar</value>
		public string IP
		{
			get { return ip; }
			set { ip = value; }
		}
	
		/// <summary>
		/// 	
		/// </summary>
		/// <value>This type is datetime</value>
		public DateTime DateSign
		{
			get { return dateSign; }
			set { dateSign = value; }
		}
	
		/// <summary>
		/// 	
		/// </summary>
		/// <value>This type is datetime</value>
		public DateTime DateActivate
		{
			get { return dateActivate; }
			set { dateActivate = value; }
		}
	
		/// <summary>
		/// 	
		/// </summary>
		/// <value>This type is money</value>
		public decimal QtySoldToDate
		{
			get { return qtySoldToDate; }
			set { qtySoldToDate = value; }
		}
	
		/// <summary>
		/// 	
		/// </summary>
		/// <value>This type is money</value>
		public decimal AmtSoldToDate
		{
			get { return amtSoldToDate; }
			set { amtSoldToDate = value; }
		}
	
		/// <summary>
		/// 	
		/// </summary>
		/// <value>This type is int</value>
		public int TotalUsers
		{
			get { return totalUsers; }
			set { totalUsers = value; }
		}
	
		/// <summary>
		/// 	
		/// </summary>
		/// <value>This type is int</value>
		public int TotalProducts
		{
			get { return totalProducts; }
			set { totalProducts = value; }
		}
	
		/// <summary>
		/// 	Progress Status: start from 0 and up 0=New application fill, 1=payment received
		/// </summary>
		/// <value>This type is tinyint</value>
		public byte Status
		{
			get { return status; }
			set { status = value; }
		}
	
		
		#endregion
	}//End Class
	
	public enum a_DomainColumns
	{
		DomainID,
		GroupID,
		DomainName,
		DomainAlias,
		CompanyName,
		Address,
		City,
		State,
		Zipcode,
		Country,
		Industry,
		McFirstName,
		McLastName,
		McTitle,
		McPhone,
		McExt,
		McFax,
		McEmail,
		TcFirstName,
		TcLastName,
		TcTitle,
		TcPhone,
		TcExt,
		TcEmail,
		PaymentType,
		BillingContact,
		CardType,
		CardNum,
		ExpireMonth,
		ExpireYear,
		NameOnCard,
		Source,
		AgreeToMMSA,
		IP,
		DateSign,
		DateActivate,
		QtySoldToDate,
		AmtSoldToDate,
		TotalUsers,
		TotalProducts,
		Status
	}//End enum
}